Bank
Limit pamięci: 32 MB
W Bajtocji funkcjonują cztery rodzaje waluty:
denary, franki, grosze i talary, nie wymienialne między sobą.
Przysparza to wiele kłopotów mieszkańcom Bajtocji.
Bajtocki Bank Biznesu (w skrócie BBB) na skutek pomyłki w rodzaju
waluty stanął w obliczu utraty płynności gotówkowej.
Zawarł on z klientami szereg umów na kredytowanie różnych
przedsięwzięć.
Wszystkie te umowy są zawarte według takiego samego wzoru:
-
umowa określa maksymalną wysokość kredytu w każdym rodzaju waluty,
-
w ramach tak określonego limitu, gdy klient potrzebuje
gotówki, to zgłasza się do BBB prosząc o określoną sumę w
każdym rodzaju waluty;
BBB może dowolnie długo zwlekać z wypłaceniem pieniędzy, ale
dopóki klient nie przekracza maksymalnej wysokości kredytu, to
prędzej czy później musi je klientowi wypłacić,
-
po otrzymaniu pieniędzy klient może zgłaszać się po kolejne
transze, aż do wyczerpania limitu,
-
na koniec klient spłaca całość zaciągniętego kredytu,
może z tym zwlekać dowolnie długo, ale prędzej czy później
musi spłacić kredyt,
-
klient nie ma obowiązku wykorzystania kredytu w maksymalnej
wysokości,
-
dla uproszczenia zakładamy, że klienci nie płacą żadnych
odsetek ani prowizji.
BBB nie dysponuje wystarczającą ilością gotówki, aby zaspokoić
potrzeby swoich klientów, a bez ich wcześniejszego zaspokojenia
kredyty nie będą spłacane.
BBB poprosił Bajtocki Fundusz Walutowy (w skrócie BFW) o pomoc.
BFW zgodził się pomóc BBB, ale zażądał, żeby BBB określił
minimalne kwoty każdego rodzaju waluty, jakie BBB musi posiadać, aby
móc doprowadzić do spłacenia przez klientów wszystkich kredytów
(nawet jeżeli klienci będą chcieli wykorzystać swoje kredyty do
maksymalnej ich wysokości).
Specjaliści BBB odkryli, że możliwych jest wiele odpowiedzi na
tak postawione pytanie (por. przykład).
BFW odpowiedziało, że interesują ich dowolne takie kwoty poszczególnych
rodzajów walut, że gdyby zmniejszyć którąkolwiek z nich choćby o 1, to
mogłyby nie wystarczyć do za\-koń\-cze\-nia wszystkich kredytów.
Zadanie
Napisz program, który:
-
wczyta ze standardowego wejścia maksymalne i aktualne wysokości
kredytów klientów,
-
wyznaczy minimalne kwoty poszczególnych rodzajów walut gwarantujące
możliwość realizacji wszystkich kredytów,
-
wypisze wynik na standardowe wyjście.
Jeśli jest możliwych wiele wyników, to Twój program powinien
zapisać dowolny z nich.
Wejście
W pierwszym wierszu standardowego wejścia jest zapisana
jedna dodatnia liczba całkowita równa liczbie klientów,
.
Klienci są ponumerowani od 1 do .
W kolejnych wierszach jest zapisanych po osiem
nieujemnych liczb całkowitych.
W -szym wierszu (dla ) zapisane są liczby
,
(, dla ).
Liczby i określają odpowiednio maksymalną i
aktualną wysokość kredytu klienta nr w:
denarach (), frankach (), groszach () i
talarach ().
Wyjście
Twój program powinien zapisać w pierwszym (i jedynym) wierszu
standardowego wyjścia cztery nieujemne liczby całkowite,
pooddzielane pojedynczymi odstępami, określające minimalne kwoty
gotówki, jakie musi posiadać BBB, odpowiednio w
denarach, frankach, groszach i talarach.
Przykład
Dla danych wejściowych:
4
3 2 1 2 0 2 0 1
2 4 1 8 1 2 1 1
3 2 0 3 1 0 0 1
3 0 1 2 1 0 0 1
poprawną odpowiedzią jest:
2 0 1 4
Autor zadania: Marcin Kubica.